package NGUYENMINHHIEU.OOP.EXCERCISEDEMO.EX02;

public class Models {
    /***
     * Nghiệp vụ xử lý tính toán Cộng - Trừ - Nhân - Chia
     * @param objCal
     * + objCal.Opt = 0: Cộng; 
     * + objCal.Opt = 1: Trừ; 
     * + objCal.Opt = 2: Nhân; 
     * + objCal.Opt = 3: Chia; 
     * @return
     */
    public double Calculators(CalculatorInfo objCal){
        //1. Khai báo tường mình biến nhận KQ
        double result = 0;
        
        //2. Kiểm tra & xử lý với từng trường hợp
        switch (objCal.getOpt()) {
            //TH: Tính toán cộng
            case 0: result =  (objCal.getA() + objCal.getB()); break;
            case 1: result =  (objCal.getA() - objCal.getB()); break;
            case 2: result =  (objCal.getA() * objCal.getB()); break;
            case 3: result =  (objCal.getA() / objCal.getB()); break;
        }
        
        //3. Trả kết quả về cho Apps
        return result;
    }
    
    public double Calculators(double a, double b, short Opt){
        //1. Khai báo tường mình biến nhận KQ
        double result = 0;
        
        //2. Kiểm tra & xử lý với từng trường hợp
        switch (Opt) {
            //TH: Tính toán cộng
            case 0: result =  (a + b); break;
            case 1: result =  (a - b); break;
            case 2: result =  (a * b); break;
            case 3: result =  (a / b); break;
        }
        
        //3. Trả kết quả về cho Apps
        return result;
    }
}
